<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.5"/>
<title>eccodes: eccodes::codes_index_get Interface Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">eccodes
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.5 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="modules.html"><span>C&#160;Interface</span></a></li>
      <li><a href="classeccodes.html"><span>F90&#160;Interface</span></a></li>
      <li><a href="namespaces.html"><span>Python&#160;Interface</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="classeccodes.html">eccodes</a></li><li class="navelem"><a class="el" href="interfaceeccodes_1_1codes__index__get.html">codes_index_get</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">eccodes::codes_index_get Interface Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Get the distinct values of the key in argument contained in the index.  
 <a href="interfaceeccodes_1_1codes__index__get.html#details">More...</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a26cf731cfda4b350500d8520ea674341"><td class="memItemLeft" align="right" valign="top">subroutine&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceeccodes_1_1codes__index__get.html#a26cf731cfda4b350500d8520ea674341">codes_index_get_int</a> (indexid, key, values, status)</td></tr>
<tr class="memdesc:a26cf731cfda4b350500d8520ea674341"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the distinct values of the key in argument contained in the index.  <a href="#a26cf731cfda4b350500d8520ea674341">More...</a><br/></td></tr>
<tr class="separator:a26cf731cfda4b350500d8520ea674341"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa9bf87d988de7eb04a9de9982e6112f"><td class="memItemLeft" align="right" valign="top">subroutine&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceeccodes_1_1codes__index__get.html#afa9bf87d988de7eb04a9de9982e6112f">codes_index_get_long</a> (indexid, key, values, status)</td></tr>
<tr class="memdesc:afa9bf87d988de7eb04a9de9982e6112f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the distinct values of the key in argument contained in the index.  <a href="#afa9bf87d988de7eb04a9de9982e6112f">More...</a><br/></td></tr>
<tr class="separator:afa9bf87d988de7eb04a9de9982e6112f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae5eb8fbe2de7d547bc92baddaf77adf1"><td class="memItemLeft" align="right" valign="top">subroutine&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceeccodes_1_1codes__index__get.html#ae5eb8fbe2de7d547bc92baddaf77adf1">codes_index_get_string</a> (indexid, key, values, status)</td></tr>
<tr class="memdesc:ae5eb8fbe2de7d547bc92baddaf77adf1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the distinct values of the key in argument contained in the index.  <a href="#ae5eb8fbe2de7d547bc92baddaf77adf1">More...</a><br/></td></tr>
<tr class="separator:ae5eb8fbe2de7d547bc92baddaf77adf1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aedc38b28a7a27b5e042f7a5a17c73001"><td class="memItemLeft" align="right" valign="top">subroutine&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceeccodes_1_1codes__index__get.html#aedc38b28a7a27b5e042f7a5a17c73001">codes_index_get_real8</a> (indexid, key, values, status)</td></tr>
<tr class="memdesc:aedc38b28a7a27b5e042f7a5a17c73001"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the distinct values of the key in argument contained in the index.  <a href="#aedc38b28a7a27b5e042f7a5a17c73001">More...</a><br/></td></tr>
<tr class="separator:aedc38b28a7a27b5e042f7a5a17c73001"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Get the distinct values of the key in argument contained in the index. </p>
<p>The key must belong to the index.</p>
<p>In case of error, if the status parameter (optional) is not given, the program will exit with an error message.<br/>
 Otherwise the error message can be gathered with <a class="el" href="classeccodes.html#a835de867b8ad79cc43f127e7048712f3">codes_get_error_string</a>.</p>
<p><b>Examples:</b> <a href="https://software.ecmwf.int/wiki/display/ECC/grib_index" target="_blank">grib_index.f90</a></p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">indexid</td><td>id of an index created from a file. The index must have been created with the key in argument. </td></tr>
    <tr><td class="paramname">key</td><td>key for wich the values are returned </td></tr>
    <tr><td class="paramname">values</td><td>array of values. The array must be allocated before entering this function and its size must be enough to contain all the values. </td></tr>
    <tr><td class="paramname">status</td><td>CODES_SUCCESS if OK, integer value on error </td></tr>
  </table>
  </dd>
</dl>
</div><h2 class="groupheader">Member Function/Subroutine Documentation</h2>
<a class="anchor" id="a26cf731cfda4b350500d8520ea674341"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">subroutine codes_index_get_int </td>
          <td>(</td>
          <td class="paramtype">integer(kind=kindofint), intent(in)&#160;</td>
          <td class="paramname"><em>indexid</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">character(len=*), intent(in)&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">integer(kind=kindofint), dimension(:), intent(out)&#160;</td>
          <td class="paramname"><em>values</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">integer(kind=kindofint), intent(out), optional&#160;</td>
          <td class="paramname"><em>status</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the distinct values of the key in argument contained in the index. </p>
<p>The key must belong to the index. This function is used when the type of the key was explicitly defined as long or when the native type of the key is long.</p>
<p>In case of error, if the status parameter (optional) is not given, the program will exit with an error message.<br/>
 Otherwise the error message can be gathered with <a class="el" href="classeccodes.html#a835de867b8ad79cc43f127e7048712f3">codes_get_error_string</a>.</p>
<p><b>Examples:</b> <a href="https://software.ecmwf.int/wiki/display/ECC/grib_index" target="_blank">grib_index.f90</a></p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">indexid</td><td>id of an index created from a file. The index must have been created with the key in argument. </td></tr>
    <tr><td class="paramname">key</td><td>key for wich the values are returned </td></tr>
    <tr><td class="paramname">values</td><td>array of values. The array must be allocated before entering this function and its size must be enough to contain all the values. </td></tr>
    <tr><td class="paramname">status</td><td>CODES_SUCCESS if OK, integer value on error </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="afa9bf87d988de7eb04a9de9982e6112f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">subroutine codes_index_get_long </td>
          <td>(</td>
          <td class="paramtype">integer(kind=kindofint), intent(in)&#160;</td>
          <td class="paramname"><em>indexid</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">character(len=*), intent(in)&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">integer(kind=kindoflong), dimension(:), intent(out)&#160;</td>
          <td class="paramname"><em>values</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">integer(kind=kindofint), intent(out), optional&#160;</td>
          <td class="paramname"><em>status</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the distinct values of the key in argument contained in the index. </p>
<p>The key must belong to the index. This function is used when the type of the key was explicitly defined as long or when the native type of the key is long.</p>
<p>In case of error, if the status parameter (optional) is not given, the program will exit with an error message.<br/>
 Otherwise the error message can be gathered with <a class="el" href="classeccodes.html#a835de867b8ad79cc43f127e7048712f3">codes_get_error_string</a>.</p>
<p><b>Examples:</b> <a href="https://software.ecmwf.int/wiki/display/ECC/grib_index" target="_blank">grib_index.f90</a></p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">indexid</td><td>id of an index created from a file. The index must have been created with the key in argument. </td></tr>
    <tr><td class="paramname">key</td><td>key for wich the values are returned </td></tr>
    <tr><td class="paramname">values</td><td>array of values. The array must be allocated before entering this function and its size must be enough to contain all the values. </td></tr>
    <tr><td class="paramname">status</td><td>CODES_SUCCESS if OK, integer value on error </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="aedc38b28a7a27b5e042f7a5a17c73001"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">subroutine codes_index_get_real8 </td>
          <td>(</td>
          <td class="paramtype">integer(kind=kindofint), intent(in)&#160;</td>
          <td class="paramname"><em>indexid</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">character(len=*), intent(in)&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">real(kind=kindofdouble), dimension(:), intent(out)&#160;</td>
          <td class="paramname"><em>values</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">integer(kind=kindofint), intent(out), optional&#160;</td>
          <td class="paramname"><em>status</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the distinct values of the key in argument contained in the index. </p>
<p>The key must belong to the index. This function is used when the type of the key was explicitly defined as long or when the native type of the key is long.</p>
<p>In case of error, if the status parameter (optional) is not given, the program will exit with an error message.<br/>
 Otherwise the error message can be gathered with <a class="el" href="classeccodes.html#a835de867b8ad79cc43f127e7048712f3">codes_get_error_string</a>.</p>
<p><b>Examples:</b> <a href="https://software.ecmwf.int/wiki/display/ECC/grib_index" target="_blank">grib_index.f90</a></p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">indexid</td><td>id of an index created from a file. The index must have been created with the key in argument. </td></tr>
    <tr><td class="paramname">key</td><td>key for wich the values are returned </td></tr>
    <tr><td class="paramname">values</td><td>array of values. The array must be allocated before entering this function and its size must be enough to contain all the values. </td></tr>
    <tr><td class="paramname">status</td><td>CODES_SUCCESS if OK, integer value on error </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ae5eb8fbe2de7d547bc92baddaf77adf1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">subroutine codes_index_get_string </td>
          <td>(</td>
          <td class="paramtype">integer(kind=kindofint), intent(in)&#160;</td>
          <td class="paramname"><em>indexid</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">character(len=*), intent(in)&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">character(len=*), dimension(:), intent(out)&#160;</td>
          <td class="paramname"><em>values</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">integer(kind=kindofint), intent(out), optional&#160;</td>
          <td class="paramname"><em>status</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the distinct values of the key in argument contained in the index. </p>
<p>The key must belong to the index. This function is used when the type of the key was explicitly defined as string or when the native type of the key is string.</p>
<p>In case of error, if the status parameter (optional) is not given, the program will exit with an error message.<br/>
 Otherwise the error message can be gathered with <a class="el" href="classeccodes.html#a835de867b8ad79cc43f127e7048712f3">codes_get_error_string</a>.</p>
<p><b>Examples:</b> <a href="https://software.ecmwf.int/wiki/display/ECC/grib_index" target="_blank">grib_index.f90</a></p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">indexid</td><td>id of an index created from a file. The index must have been created with the key in argument. </td></tr>
    <tr><td class="paramname">key</td><td>key for wich the values are returned </td></tr>
    <tr><td class="paramname">values</td><td>array of values. The array must be allocated before entering this function and its size must be enough to contain all the values. </td></tr>
    <tr><td class="paramname">status</td><td>CODES_SUCCESS if OK, integer value on error </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<hr/>The documentation for this interface was generated from the following file:<ul>
<li>eccodes_f90.f90</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.5
</small></address>
</body>
</html>
